1. Field of the Invention
The present invention relates to an apparatus for measuring a bit error ratio of a communication system using cyclic redundancy codes and trellis codes. More particularly, it relates to an apparatus for accurately measuring a bit error ratio by using a viterbi decoder to improve the performance of a communication system that uses cyclic redundancy codes and trellis codes to detect and correct errors. The apparatus generates new cyclic redundancy codes and substitutes them in place of the transmitted cyclic redundancy codes by using decoded data that has been processed by a viterbi decoder. The apparatus then re-generates trellis encoded data by using reconstructed data that contains the new cyclic redundancy codes. Finally, the re-encoded data are compared with the transmitted data to calculate a bit error ratio.
2. Description of the Prior Art
In general communication systems, error correction and decoding methods are used to correct errors that are generated while data passes through a transmission channel containing noise and other elements which inhibit communication. Two types of error correction and decoding methods are block decoding and trellis decoding. In the block decoding method, redundancy codes are added to a block of voice information to be transmitted. In the trellis decoding method, data which are input in order are decoded based on a function of the decoding method.
A method for measuring a bit error ratio will be described with reference to a signal treatment method based on a code division multiple access (CDMA) standard. This standard, which uses cyclic redundancy codes and trellis codes to detect and correct transmission errors, is used in a digital cellular phone system and a personal communication system in Korea.
Under the CDMA standard, voice signals are not transmitted at a predetermined rate, but are transmitted at one of four rates based on the magnitude of the voice signals which are detected by a voice activity detector. For example, when the voice activity detector detects voice signals which are in the most active state, voice signals are transmitted at 9600 bits per second (bps). However, when the voice signals are in an inactive state, the voice signals are transmitted at 1200 bps, the minimum transmission rate necessary to maintain a channel between base stations and terminals. A transmission rate of 4800 bps is used to change the voice signals from the active state into the inactive state and a transmission rate of 2400 bps is used to change the voice signals from the inactive state into the active state. By transmitting data at different rates based on the state of voice signals, communication channels can be maintained between base stations and terminals when the amount of data to be transmitted is small. This also allows the electric power required to transmit data to be used more efficiently resulting in reduced power consumption and a decrease in interference signals effecting other terminal users on the communication system.
As described above, cyclic redundancy codes, which are generated based on the transmission rate determined by the degree of activity of the voice signals, as a frame quality indicator, are added to voice information. The transmitted data provides the necessary parameters to determine whether the frames received at the receiving unit have errors and to determine the transmission rate of the received frames. For example, when data are transmitted at the rate of 9600 bps, a voice information block consisting of 172 bits is formed and combined with 12 bits of cyclic redundancy codes. Then, 8 encoded tail bits, which are set to zero, are added to construct a frame totaling 192 bits.
When data are transmitted at the rate of 4800 bps, a voice information block consisting of 80 bits is formed and combined with 8 bits of cyclic redundancy codes. Then, 8 encoded tail bits, which are set to zero, are added to construct a frame totaling 96 bits.
Finally, when data are transmitted at the rates of 1200 bps or 2400bps, no cyclic redundancy codes are combined with the voice information block and only encoded tail bits, which are set to zero, are added to construct a frame. Each frame described above is transmitted in 20 msec.
The CDMA communication system includes trellis codes that have a constraint length of 9 and an encoding ratio of 1/3. A trellis code function is expressed with 557, 663, and 711 by an octonary and whenever one data bit is input, three encoded data bits are output.
Under the CDMA standard, data processed by a cyclic redundancy code generating unit and a trellis encoding unit are transmitted by a radio channel through a symbol repetition unit, a block interleaving unit, a 64 array orthogonal modulating unit, a frequency spreading unit, a phase modulating unit, an intermediate frequency unit, and a radio frequency unit. A receiver demodulates data by processing them in similar units in reverse order from the way they were modulated by the transmitter.
The demodulated data from the transmitter are decoded by a viterbi decoder, which is a maximum likelihood decoder. The viterbi decoder determines whether the decoded data have errors based on the cyclic redundancy codes which were added prior to transmission.
In a communication system using the CDMA standard, information relating to the transmission rate determined by the transmitter voice activity detection unit is not transmitted to the receiver. Therefore, the transmission rate which is actually used to transmit the data, is set at one of the four rates described above, depending on the frame errors.
However, the transmission rate cannot be accurately determined solely by using the bit error ratio based on the method described above. Therefore, it is necessary to calculate a more accurate transmission rate by measuring the bit error ratio of the demodulated data at the receiver before the demodulated data are processed by the viterbi decoder, instead of using the bit error ratio of the transmitted data and the cyclic redundancy codes carried with the transmitted data.
FIG. 1 is a block diagram of a conventional apparatus for measuring a bit error ratio in which cyclic redundancy codes and trellis codes are applied based on the transmission rate.
A conventional apparatus for measuring a bit error ratio using cyclic redundancy codes and trellis codes includes the following components:
a viterbi decoding unit 10 that decodes trellis encoded data by using a maximum likelihood decoding method; PA1 a trellis re-encoding unit 20 that re-encodes decoded data from the viterbi decoding unit 10; PA1 a time delaying unit 30 that delays demodulated data for an amount of time necessary to compensate for the delay caused by the data being processed in the viterbi decoding unit 10 and trellis re-encoding unit 20; PA1 a data comparing unit 40 that compares re-encoded data from the trellis re-encoding unit 20 with the time delayed data from the time delaying unit 30; and PA1 a bit error ratio measuring unit 50 that calculates the bit error ratio based on the error data from the data comparing unit 40. PA1 a viterbi decoding unit that decodes demodulated trellis encoded data by using a maximum likelihood decoding method; PA1 a trellis re-encoding unit that receives reconstructed data from the cyclic redundancy code regeneration unit and trellis encodes the reconstructed data in the same manner as performed by the transmitter trellis encoder; and PA1 a cyclic redundancy code regeneration unit, disposed between the viterbi decoding unit and the trellis re-encoding unit, that receives decoded data from the viterbi decoding unit, removes existing cyclic redundancy codes, and adds new cyclic redundancy codes. PA1 a time delaying unit that receives and delays demodulated data for an amount of time necessary to compensate for the delay caused as data are processed by the viterbi decoding unit, the cyclic redundancy code regeneration unit, and the trellis re-encoding unit; PA1 a data comparing unit that compares the re-encoded data from the trellis re-encoding unit with time delayed data from the time delaying unit and generates error data which include bits with errors and without errors; and PA1 a bit error ratio measuring unit that calculates a bit error ratio based on error data from the data comparing unit. PA1 a cyclic redundancy code selecting unit that detects the number of existing cyclic redundancy code bits added prior to transmission and selects the method for adding the new cyclic redundancy codes; and PA1 a cyclic redundancy code generating unit that generates new cyclic redundancy codes, based on an input from the cyclic redundancy code selecting unit, and adds the new cyclic redundancy codes to the voice information.
The operation of the conventional apparatus for measuring a bit error ratio using cyclic redundancy codes and trellis codes will be described below with reference to FIG. 1.
Data which are demodulated by the receiver demodulator and which are processed by the transmitter trellis encoder contain encoded symbols and bits that carry errors generated by noise, fading, and interference signals in the transmission channel. The demodulated data, including bits with errors, are corrected by being processed in the viterbi decoding unit 10. The resulting decoded data are in the same frame form as the data output from the transmitter.
Next, the trellis re-encoding unit 20 receives the decoded data, including voice information and cyclic redundancy codes, in a frame form, and generates trellis re-encoded data in the same manner as the transmitter trellis encoder. Because errors generated during demodulation are corrected at a desired level, the decoded data output from the viterbi decoding unit 10 have less errors than the demodulated data input into the viterbi decoding unit 10. Therefore, it is presumed that the trellis re-encoded data are the same as the data encoded by the transmitter trellis encoding unit, prior to transmission. Then the data comparing unit 40 compares the trellis re-encoded data, which is regarded as the data prior to transmission, with the time delayed data, to find errors and generate error data. Finally, a bit error ratio measuring unit 50 divides the error data into bits having no errors and bits having errors and then calculates a bit error ratio.
The conventional bit error ratio measuring apparatus measures the bit error ratio based on the assumption that the decoded data are the same as the data output from the transmitter. However, if all the errors contained in the demodulated data are not corrected by the viterbi decoder, the decoded data will be different from the data input into the transmitter trellis encoding unit. Accordingly, the trellis re-encoded data will be different from the data output from the transmitter trellis encoding unit.
For example, because the conventional apparatus uses data with errors as a point of reference when measuring a bit error ratio, the conventional apparatus can construe demodulated data containing errors, that are input into the viterbi decoder, as data not containing errors. Therefore, the apparatus tends to calculate a lower bit error ratio than actually exists. This causes the data to continue to be transmitted at a higher transmission rate rather than a proper lower rate.